package org.lora.biz.workflow;

import org.lora.biz.BizCommonConstant;

/**
 * <p>
 * 类名:WorkflowConstant
 * </p>
 * 描述:<br>
 * 创建时间:2016年9月8日 上午11:47:28<br>
 * 
 * @author Bladnir@outlook.com<br>
 *         修改历史:<br>
 *         2016年9月8日 Bladnir 创建<br>
 */
public class WorkflowConstant extends BizCommonConstant{

	/****************************************
	 * 主键前缀 start
	 ****************************************/

	public static final String PREFIX_RESOURCE = "WFR";

	public static final String PREFIX_PROCESS_DEFINITION = "PD";

	public static final String PREFIX_PROCESS_INSTANCE = "PI";

	public static final String PREFIX_TASK = "TA";

	public static final String PREFIX_TASK_EXCUTE = "TE";

	/****************************************
	 * 主键前缀 end
	 ****************************************/

	/****************************************
	 * 流程状态 start
	 ****************************************/

	public static final String PROCESS_STATE_DRAFT = "draft";// 草稿

	public static final String PROCESS_STATE_MOVE = "move";// 运行

	public static final String PROCESS_STATE_FINISH = "finish";// 结束
	
	public static final String PROCESS_DEL_STATE_YES = "Y";
	
	public static final String PROCESS_DEL_STATE_NO = "N";

	/****************************************
	 * 流程状态 end
	 ****************************************/

	/****************************************
	 * 任务状态 start
	 ****************************************/
	public static final String TASK_STATE_TODO = "todo";// 待办

	public static final String TASK_STATE_HAVEDO = "havedo";// 待办

	public static final String TASK_STATE_WAIT = "wait";// 等待
	
	public static final String TASK_EXCUTE_END = "end";//taskExcute表到结束的taskId

	/****************************************
	 * 任务状态 end
	 ****************************************/
	
	/****************************************
	 * 路径类型 start
	 ****************************************/
	
	/**
	 * 路径类型-普通
	 */
	public static final String PATH_TYPE_NORMAL = "normal";
	
	/**
	 * 路径类型-退回
	 */
	public static final String PATH_TYPE_BACK = "back";
	
	/****************************************
	 * 路径类型 end
	 ****************************************/
	
	
	
	

	/****************************************
	 * 处理人类型 start
	 ****************************************/

	/**
	 * 处理人类型-机构
	 */
	public static final String EXCUTER_TYPE_ORG = "org";

	/**
	 * 处理人类型-群组
	 */
	public static final String EXCUTER_TYPE_GROUP = "group";

	/**
	 * 处理人类型-身份
	 */
	public static final String EXCUTER_TYPE_EI = "ei";

	/**
	 * 处理人类型-其他环节实际处理人
	 */
	public static final String EXCUTER_TYPE_OTHER = "other";

	/****************************************
	 * 处理人类型 end
	 ****************************************/

	/****************************************
	 * 多人处理类型 start
	 ****************************************/
	/**
	 * 处理方式-多人处理-抢先处理
	 */
	public static final String EXCUTE_MULTI_COMPETE = "compete";

	/**
	 * 处理方式-多人处理-分组串行
	 */
	public static final String EXCUTE_MULTI_SERIAL = "serial";

	/**
	 * 处理方式-多人处理-分组并行
	 */
	public static final String EXCUTE_MULTI_PARALLEL = "parallel";

	/**
	 * 处理方式-单人处理
	 */
	public static final String EXCUTE_SINGLE = "single";
	/****************************************
	 * 多人处理类型 end
	 ****************************************/
	
	/****************************************
	 * 环节类型 start
	 ****************************************/
	
	public static final String ACTIVITY_TYPE_START = "start round";
	
	public static final String ACTIVITY_TYPE_END = "end round";
	
	public static final String ACTIVITY_TYPE_NORMAL = "task";
	
	public static final String ACTIVITY_TYPE_ROUTE = "fork";
	
	/****************************************
	 * 环节类型 end
	 ****************************************/
	

	/****************************************
	 * MongoDB start
	 ****************************************/
	public static final String MONGODB_DATABASE_NAME = "Lora";

	public static final String MONGODB_WORKFLOW_TABLE_NAME = "ProcessDefinitionResource";

	/****************************************
	 * MongoDB start
	 ****************************************/
	


	/**
	 * 构造方法
	 */
	private WorkflowConstant() {
		// do nothing
	}

}
